package user_tree

import "gitee.com/theegg/go-brick/app/service/app"

// 获取用户所有前置用户
func GetAllFrontUser(userId int64) ([]*UserTree, error) {
	userTrees := make([]*UserTree, 0)
	err := app.Db().Table("user_tree").Where("user_id = ?", userId).Find(&userTrees)
	if err != nil {
		return nil, app.NewError(err)
	}

	return userTrees, nil
}

// 获取用户所有前置用户 id
func GetAllFrontUserIds(userId int64) ([]int64, error) {
	var userIds []int64
	err := app.Db().Table("user_tree").Cols("user_id").Where("user_id = ?", userId).Find(&userIds)
	if err != nil {
		return nil, app.NewError(err)
	}

	return userIds, nil
}

// 获取用户所有后置用户
// 仅仅 id
func GetAllBackUserIds(userId int64) ([]int64, error) {
	var userIds []int64
	err := app.Db().Table("user_tree").Cols("user_id").Where("front_user_id = ?", userId).Find(&userIds)
	if err != nil {
		return nil, app.NewError(err)
	}

	return userIds, nil
}
